By employing a skilled operator's experience and intuition in the form of rules, a fuzzy control apparatus seeks to control a process that cannot be controlled well by a conventional PID control apparatus.
A fuzzy control apparatus is based on fuzzy theory. Fuzzy theory seeks to realize artificial intelligence and robotics by formalizing sophisticated human thought and quantitative methods of judgment and then incorporating these in a computer.
FIG. 1 illustrates a control system using a fuzzy control apparatus. A fuzzy control apparatus 10 calculates a manipulated-variable output U based on an error e between a controlled variable Y, which is obtained from a controlled system (process) 20, and a prescribed set value (target value) SV, and a rate of change .DELTA.e in the error (in case of control based on sampled values, the difference between an error e.sub.n of a present sampling and an error e.sub.n-1 of the immediately preceding sampling). The output U is supplied to the controlled system 20.
Using membership functions relating to errors and rates of change thereof defined beforehand in rules, the fuzzy control apparatus 10 judges the conformity of the error e and rate of change .DELTA.e thereof to the rules. In accordance with the degree of conformity, the apparatus obtains inferential results based on membership functions relating to a manipulated variable similarly defined for every rule, computes the center of gravity of these inferential results and outputs the center of gravity as a manipulated variable.
FIG. 2 illustrates a table in which is set a change .DELTA.U in a manipulated variable in rules created for each important combination of an error and the rate of change thereof. NL represents a negative large value, NM a negative medium value, NS a negative small value, ZR almost zero, PS a positive small value, PM a positive medium value, and PL a positive large value. For example, if e=NS and .DELTA.e=PS, namely if the controlled variable is a little smaller than the target value and is rising a little, then .DELTA.U is decided in such a manner that .DELTA.U=ZR will hold, i.e., in such a manner that the manipulated variable will not change. In each rule, the error e, the rate of change .DELTA.e of the error and the rate of change .DELTA.U of the manipulated variable are evaluated using membership functions defined in advance.
FIGS. 3a through 3c illustrate examples of membership functions related to the error e. FIG. 3a illustrates the shape common to PM, PS, ZR, NS and NM. The membership functions are isosceles triangles about a central value .alpha., in which the length of the base is l and the height (grade) of the apex is 1. The position of the central value .alpha. differs in dependence upon the type PM, PS . . . of membership function. FIG. 3b shows the membership function in the case of PL. In the region e&lt;K.sub.1, the shape is the same as in FIG. 3a, and the grade is 1 at e.gtoreq.K.sub.1. FIG. 3c shows the membership function in case of NL. In the region e&gt;-K.sub.1, the shape is the same as in FIG. 3a, and the grade is 1 at e.ltoreq.-K.sub.1.
Membership functions relating to the rate of change .DELTA.e in the error and the rate of change .DELTA.U in the manipulated variable are also of the same shapes as the membership functions of the error e shown in FIGS. 3a through 3c, but the parameters .alpha., l, K.sub.1, etc., are different. Of course, the membership functions can have any shape (e.g., trapezoidal or the shape of a normal distribution), not just the shape of an isosceles triangle.
FIGS. 4a, 4b and 4c illustrate all of the membership functions relating to respective ones of e, .DELTA.e and .DELTA.U. For example, in a case where temperature control of the controlled system is performed, the units are e (.degree.C.), .DELTA.e (.degree.C./sec), and .DELTA.U (%). K.sub.1, K.sub.2 and K.sub.3 are adjustment parameters which determine the positions of the membership functions NL and PL. These parameters are tuned to suitable values based upon experience.
The procedure of fuzzy inferential reasoning will now be described with reference to FIGS. 5a, 5b, 5c and FIG. 6.
FIGS. 5a, 5b and 5c illustrate a processing procedure relating to the following rule: If e=NS and .DELTA.e=PS, then .DELTA.U=ZR. The degree of conformity of the measured error e to the membership function NS is found, and this is designated by a.sub.1 (FIG. 5a). Similarly, the degree of conformity of the measured rate of change .DELTA.e of the error e to the membership function PS is found, and this is designated by a.sub.2 (FIG. 5b). These degrees of conformity a.sub.1, a.sub.2 are compared, and the smaller, namely a.sub.2, is adopted as the degree of conformity of the rule (this is a MIN operation). Let W.sub.1 (FIG. 5c) represent a trapezoidal portion obtained by cutting the membership function ZR of the rate of change .DELTA.U in the manipulated variable at the height of the selected a.sub.2. This computation of the degree of conformity and the operation with respect to .DELTA.U using the computed degree of conformity are executed with regard to all rules to obtain trapezoidal portions W.sub.2 -W.sub.n (where n is the number of rules) in each of the rules.
The trapezoidal portions W.sub.1 -W.sub.n thus obtained in each of the rules are superimposed as shown in FIG. 6 (in which n=3) to obtain the position of the center of gravity thereof, and this is determined as being the rate of change .DELTA.U of the manipulated variable. This rate of change .DELTA.U is added to the immediately preceding manipulated variable to decide the presently prevailing manipulated variable U, which is delivered as an output.
In the conventional fuzzy control apparatus constructed as set forth above, the tuning parameters K.sub.1, K.sub.2, K.sub.3 of the membership functions shown in FIGS. 4a, 4b and 4c must be adjusted in dependence upon the process under control. This adjustment must be performed by a skilled operator based upon experience. If the parameters are set at improper values, control performance will deteriorate.
Considering a case where the process is started up, the procedure followed is to enlarge the manipulated variable in the initial stage of operation where the controlled variable is much lower than the target value, reduce the manipulated variable if the controlled variable approaches the target value to a certain extent, and stabilize the manipulated variable at a certain constant value when the controlled variable and the target value coincide.
With regard to a process having a quick response, the manipulated variable must be reduced fairly early. If the manipulated variable is kept at its maximum value even when the controlled variable approaches the target value, overshoot will occur if the manipulated variable is subsequently reduced in sudden fashion. Consequently, the tuning parameters K.sub.1, K.sub.2 must be enlarged to make the limits within which NL, PL, etc., are decided depart from the target value. If K.sub.1, K.sub.2 are made small (since e, .DELTA.e fluctuate by a wide margin with respect to the amount of change in the manipulated variable in a process with a quick response), the value of the error e oscillates between a value less than NL and a value greater than PL, and the rules which employ the membership functions (NS, ZR, PS, etc.) situated near the center can scarcely be used. This leads to the occurrence of overshoot and causes the phenomenon referred to as hunting.
With regard to a process having a slow response, it is necessary conversely to hold the manipulated variable at a maximum value near the target value. If the manipulated variable is reduced early, start-up becomes very slow. Consequently, it must be so arranged that the tuning parameters K.sub.1, K.sub.2 are made small and the membership functions are decided as being NL, PL, etc., until the controlled variable approximates the target value. If K.sub.1, K.sub.2 are made large, the rules which employ the membership functions (NL, PL, etc.) situated at both ends can scarcely be used and response deteriorates. This leads to a phenomenon in which the error never approaches zero.
A case will now be considered in which a process having a high steady gain (a parameter which represents how much the controlled variable will change when the manipulated variable is changed by 1%) and a process having a low steady gain are controlled.
Assuming that the target values of both processes are altered by the same value, it will suffice if the change in the manipulated variable is small in the case of the process having the high steady gain. Accordingly, the value of the parameter K.sub.3 also should be small. If the value of parameter K.sub.3 is set to be large, the manipulated variable will vary greatly and the overshoot and hunting phenomena will occur.
In the case of the process having the low steady gain, on the other hand, the manipulated variable must be changed by a large amount. Accordingly, it is required that the value of the parameter K.sub.3 also be enlarged. If the value of parameter K.sub.3 is set to be small, the manipulated variable changes only a little, response deteriorates and a phenomenon occurs in which the error never becomes zero.
Thus, though the setting of the parameters K.sub.1, K.sub.2, K.sub.3 is very important, in the prior art the setting is made relying solely upon the experience of the operator and is deficient in terms of ease of use and universality.